package com.tang.service.logic;

import com.tang.entity.CarInfo;
import com.tang.model.vo.TreeNodeLink;

import java.util.List;

/**
 * 逻辑接口
 * 
 * @author Tang
 */
public interface LogicFilter {

    /**
     * 逻辑决策器
     * 
     * @param matterValue 决策值
     * @param treeNodeLineInfoList 所有的决策条件分支
     * @return 下一个节点Id
     */
    Long filter(Object matterValue, List<TreeNodeLink> treeNodeLineInfoList);
    
    /**
     * 获取决策值
     * 
     * @param treeId 树id
     * @param userId 用户id
     * @param carInfo 车辆信息
     * @return 决策值
     */
    Object matterValue(Long treeId, String userId, CarInfo carInfo);
    
}
